package com.sqx.modules.app.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;


/**
 * 用户
 */
@Data
@ApiModel("用户")
@TableName("tb_user")
public class UserEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
    @ApiModelProperty("用户id")
    @TableId(type = IdType.AUTO, value = "user_id")
    private Long userId;
    /**
     * 用户名
     */
    @ApiModelProperty("用户名")
    @TableField("user_name")
    private String userName;

    /**
     * 手机号
     */
    @ApiModelProperty("手机号")
    private String phone;

    /**
     * 头像
     */
    @ApiModelProperty("头像")
    private String avatar;

    /**
     * 性别 1男 2女
     */
    @ApiModelProperty("性别 1男 2女")
    private Integer sex;
    /**
     * 员工状态:0空闲 1忙碌
     */
    @TableField(exist = false)
    @ApiModelProperty("员工状态:0空闲 1忙碌")
    private Integer workStatus;
    /**
     * 员工状态:0空闲 1忙碌
     */

    @TableField(exist = false)
    private Integer isVip;
    /**
     * 年龄
     */
    @ApiModelProperty("年龄")
    private Integer age;

    /**
     * 微信小程序openid
     */
    @ApiModelProperty("微信小程序openid")
    @TableField("open_id")
    private String openId;
    /**
     * 是否缴纳保证金 0否 1是
     */
    @ApiModelProperty("是否缴纳保证金 0否 1是")
    private Integer isSafetyMoney;
    /**
     * 微信app openid
     */
    @ApiModelProperty("微信公众号openid")
    @TableField("wx_open_id")
    private String wxOpenId;

    /**
     * 密码
     */
    private String password;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private String createTime;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private String updateTime;

    /**
     * 苹果id
     */
    @TableField("apple_id")
    private String appleId;

    /**
     * 手机类型 1安卓 2ios
     */
    @TableField("sys_phone")
    private Integer sysPhone;

    /**
     * 状态 1正常 2禁用
     */
    private Integer status;

    /**
     * 来源 app 小程序 公众号
     */
    private String platform;

    /**
     * 积分
     */
    private Integer jifen;

    /**
     * 邀请码
     */
    @TableField("invitation_code")
    private String invitationCode;

    /**
     * 邀请人邀请码
     */
    @TableField("inviter_code")
    private String inviterCode;

    private String clientid;

    private String zhiFuBao;

    private String zhiFuBaoName;

    /**
     * 是否认证 状态值 1用户认证  2企业认证  3用户企业都认证
     */
    private Integer isAuthentication;

    /**
     * 商家小程序openId
     */
    private String shopOpenId;

    @TableField(exist = false)
    private Integer type;
    @TableField(exist = false)
    private String companyName;

    /**
     * vip到期时间
     */
    @TableField(exist = false)
    private String vipEndTime;

    /**
     * 1用户 2商家
     */
    private Integer userType;

    /**
     * 介绍
     */
    private String details;

    /**
     * 轮播图
     */
    private String detailsImg;

    /**
     * 资质
     */
    private String certificationImg;

    private String wxImg;
    private String address;

    private String shopPhone;

    private String shopImg;

    private String shopName;

    private String addressImg;

    private String startTime;

    private String endTime;

    private String shopType;

    private String longitude;

    private String latitude;
    /**
     * 师傅端小程序openId
     */
    private String masterOpenId;

    /**
     * 是否接受消息推送 1是 2否
     */
    private Integer isSendMsg;

    /**
     * 比例
     */
    private BigDecimal rate;

    /**
     * 直属佣金比例
     */
    private BigDecimal zhiRate;

    /**
     * 非直属佣金比例
     */
    private BigDecimal feiRate;

    /**
     * 公司id 如果是员工 则id为公司的id (公司id为商家的用户id） 不是则是null或0
     */
    private Long companyId;

    /**
     * 消息
     */
    private String msg;
    /**
     * 评分
     */
    private String finalScore;

    /**
     * 是否是新人 1是 0不是
     */
    private Integer isNewPeople;
    /**
     * 正在进行中的订单数量
     */
    @TableField(exist = false)
    private Integer orderCount;

    @TableField(exist = false)
    private Long id;

    @TableField(exist = false)
    private Integer isRecommend;

}
